package cn.fbs.dao.mysql;

import cn.fbs.model.TDataInfo;
import cn.fbs.vo.DataEvaluateVo;
import cn.fbs.vo.TDataInfoVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface TDataInfoMapper {
    int deleteByPrimaryKey(Long id);

    int insert(TDataInfo record);

    int insertSelective(TDataInfo record);

    TDataInfo selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(TDataInfo record);

    int updateByPrimaryKeyWithBLOBs(TDataInfo record);

    int updateByPrimaryKey(TDataInfo record);

    List<TDataInfo> selectAll();

    List<TDataInfo> likeQuery(String fileName);


    List<TDataInfoVo> selectDataByTargetType(Long targetType);

    List<TDataInfoVo> searchData(@Param("targetType") Long targetType,
                                 @Param("dataName") String dataName);

    List<TDataInfoVo> selectDataByTargetTypes(@Param("targetTypes") String targetTypes,@Param("searchName") String searchName);

    void deleteByIdS(@Param("idsStr") String idsStr);

    DataEvaluateVo getDataEvaluate(Long id);

    List<Object> selectByIdsStr(@Param("idsStr")String idsStr);

    List<Map<String, Object>> getDataStatistics();


    TDataInfo getDataByFileUrl(@Param("fileUrl") String fileUrl);
}